﻿using IntelligentEscalator.DLL;
using System.Collections.Generic;

namespace IntelligentEscalator.Models
{
    public class FeatureModel
    {
        public double acc_peakToPeak { get; set; } // 峰峰值 OK
        public double acc_peak { get; set; } // 峰值 OK
        public double acc_meanAbsolute { get; set; }// 绝对均值 OK
        public double acc_rmsValue { get; set; }// 有效值（均方根值） OK
        public double acc_kurtosisValue { get; set; }// 峭度  OK
        public double acc_Wave { get; set; }// 波形指标  OK
        public double acc_peakFactor { get; set; }// 峰值指标  OK
        public double acc_PulseFactor { get; set; }// 脉冲指标  OK
        public double acc_CrestFactor { get; set; }// 裕度指标
        public double acc_kurtosisFactor { get; set; }// 峭度指标  OK
        public double acc_envelope = 0;     // 包络
        public double acc_rmsvelocity = 0;
    }
    public class FeatureModels
    {

        public List<string> xDatas { get; set; } = new List<string>(); // 时间
        public List<double> acc_peakToPeaks { get; set; } = new List<double>(); // 峰峰值 OK
        public List<double> acc_peaks { get; set; } = new List<double>();// 峰值 OK
        public List<double> acc_meanAbsolutes { get; set; } = new List<double>();// 绝对均值 OK
        public List<double> acc_rmsValues { get; set; } = new List<double>();// 有效值（均方根值） OK
        public List<double> acc_kurtosisValues { get; set; } = new List<double>();// 峭度  OK
        public List<double> acc_Waves { get; set; } = new List<double>();// 波形指标  OK
        public List<double> acc_peakFactors { get; set; } = new List<double>();// 峰值指标  OK
        public List<double> acc_PulseFactors { get; set; } = new List<double>();// 脉冲指标  OK
        public List<double> acc_CrestFactors { get; set; } = new List<double>();// 裕度指标
        public List<double> acc_kurtosisFactors { get; set; } = new List<double>();// 峭度指标  OK
    }

    public class ChannelData
    {
        public int ChannelIndex { get; set; }
        public double[] Datas { get; set; } // 原始数据
        public QCPGraphData[] FFTDatas { get; set; } // FFT频谱数据
        public QCPGraphData[] IFFTDatas { get; set; } // 倒谱谱数据
        public QCPGraphData[] ENVDatas { get; set; } // 包络谱频谱数据
        public QCPGraphData[] PownerDatas { get; set; } // 功率谱数据
        public FeatureModel FeatureModels { get; set; } // 特征谱
    }

    public class DeviceInfo
    {
        public int DeviceCount { get; set; } // 设备数量
        public string Device_SN { get; set; } // 设备序列号
    }


}
